// 这是一个chdir和getcmd函数的应用实例
// 首先使用mkdir函数在当前文件夹下建立一个新的文件夹
// 然后使用chdir函数切换工作目录到该文件夹下
// 打印输出切换后的工作路径，然后在该工作目录下建立一个新的文件夹

#include <fcntl.h>
#include <unistd.h>
#include <stdio.h>
#include <sys/stat.h>

int main(int argc, char *argv[]){
	
	unsigned char temp;
	// 路径字符串缓冲区
	char npath[2000];

	if(argc != 3){
		printf("请输入正确的参数！\n");
		return -1;
	}  

	// 在当前工作路径（文件夹）下创建一个目录，目录名由argv[1]确定
	temp = mkdir(argv[1], S_IRUSR|S_IWUSR|S_IXUSR);

	// 判断文件夹创建是否成功
	if(temp == -1){
		printf("文件夹%s创建失败\n", argv[1]);
		return -2;
	}else{
		printf("文件夹%s创建成功!\n", argv[1]);

		// 切换工作目录到该文件夹下
		if(chdir(argv[1]) == -1){
			printf("切换路径失败！\n");
			return -3;
		}

		// 打印输出切换后的工作路径
		if(getcwd(npath, 200) == NULL){
			printf("调用工作路径失败！\n");
			return -4;
		}else{
			printf("当前的工作路径为 %s\n", npath);

			// 在当前的文件夹下创建新目录
			temp = mkdir(argv[2], S_IRUSR|S_IWUSR|S_IXUSR);

			if(temp == -1){
				printf("文件夹%s创建失败！\n", argv[2]);
				return -5;
			}else{
				printf("文件夹%s创建成功! \n", argv[2]);
			}
		}
	}

	return 0;
}
